14 research outputs found

    Study, analysis and new scheduling proposals in partitioned real-time systems

    Full text link
    [ES] En nuestra vida cotidiana, cada vez más ordenadores controlan nuestro entorno: teléfonos móviles, procesos industriales, asistencia a la conducción, etc. Todos estos sistemas presentan requisitos estrictos para garantizar un comportamiento adecuado. En muchos de estos sistemas, cumplir con las restricciones de tiempo es un factor tan importante como el resultado lógico de los cálculos. Desde hace aproximadamente 40 años, los sistemas en tiempo real son muy atractivos en el campo de la computación y hoy en día se aplican en áreas de gran alcance como aplicaciones industriales, aplicaciones aeroespaciales, telecomunicaciones, electrónica de consumo, etc. Algunos retos a abordar en el campo del tiempo real son el determinismo y la predecibilidad del comportamiento temporal del sistema. En este sentido, garantizar la ejecución del programa y los tiempos de respuesta del sistema son requisitos esenciales que deben cumplirse estrictamente a través de estrategias apropiadas de planificación de tareas. Además, las arquitecturas multiprocesador se están volviendo más populares debido al hecho de que las capacidades de procesamiento y los recursos computacionales de los sistemas están aumentando. Un estudio reciente estima que existe una tendencia creciente entre las arquitecturas multiprocesador a combinar diferentes niveles de criticidad en el mismo sistema. En este sentido, proporcionar aislamiento entre las aplicaciones es extremadamente necesario. La tecnología particionada es capaz de lidiar con este propósito. Además, la gestión de la energía es un problema relevante en los sistemas en tiempo real. Muchos sistemas empotrados de tiempo real, como dispositivos portátiles o robots móviles que requieren baterías, buscan encontrar técnicas que reduzcan el consumo de energía y, como consecuencia, aumenten la vida útil de sus baterías. También se obtienen claros beneficios operativos, financieros, monetarios y ambientales al minimizar el consumo de energía. Con todo ello, este trabajo aborda el problema de planificabilidad y contribuye al estudio de las nuevas técnicas de planificación en sistemas particionados de tiempo real. Estas técnicas proporcionan el tiempo mínimo para planificar de manera factible conjuntos de tareas. Además, se proponen técnicas de asignación para sistemas multiprocesador cuyo objetivo principal es reducir el consumo de energía del sistema global. Finalmente, se presentan los resultados obtenidos así como los trabajos futuros relacionados con este trabajo[CA] En la nostra vida quotidiana, cada vegada més ordenadors controlen el nostre entorn: telèfons mòbils, processos industrials, assistència a la conducció, etc. Tots aquests sistemes presenten requisits estrictes per a garantir un comportament adequat. En molts d' aquests sistemes, complir amb les restriccions de temps és un factor tan important com el resultat lògic dels càlculs. Des de fa aproximadament 40 anys, els sistemes en temps real són molt atractius en el camp de la computació i hui dia s' apliquen en àrees de gran abast com a aplicacions industrials, aplicacions aeroespacials, telecomunicacions, electrònica de consum, etc. Alguns reptes a abordar en el camp del temps real són el determinisme i la predictibilitat del comportament temporal del sistema. En aquest sentit, garantir l'execució del programa i els temps de resposta del sistema són requisits essencials que han de complir-se estrictament a través d'estratègies apropiades de planificació de tasques. A més, les arquitectures multiprocessador s'estan tornant més populars a causa del fet que les capacitats de processament i els recursos computacionals dels sistemes estan augmentant. Un estudi recent estima que existeix una tendència creixent entre les arquitectures multiprocessador a combinar diferents nivells de criticitat en el mateix sistema. En aquest sentit, proporcionar aïllament entre les aplicacions és extremadament necessari. La tecnologia particionada és capaç de bregar amb aquest propòsit. A més, la gestió de l'energia és un problema rellevant en els sistemes en temps real. Molts sistemes embebits de temps real, com a dispositius portàtils o robots mòbils que requereixen bateries, busquen trobar tècniques que reduïsquen el consum d'energia i, com a conseqüència, augmenten la vida útil de les seues bateries. També s'obtenen clars beneficis operatius, financers, monetaris i ambientals en minimitzar el consum d'energia. Amb tot això, aquest treball aborda el problema de planificabilitat i contribueix a l'estudi de les noves tècniques de planificació en sistemes particionats de temps real. Aquestes tècniques proporcionen el temps mínim per a planificar de manera factible conjunts de tasques. A més, es proposen tècniques d'assignació per a sistemes multiprocessador l'objectiu principal del qual és reduir el consum d'energia del sistema global. Finalment, es presenten els resultats obtinguts així com els treballs futurs relacionats amb aquest treball.[EN] In our everyday lives, more and more computers are controlling our environment: mobile phones, industrial processes, driving assistance, etc. All these systems present strict requirements to ensure proper behaviour. In many of these systems, the time at which the action is delivered is as important as the logical result of the computation. About 40 years ago, real-time systems began to attract attention in computing field and nowadays are applied in wide ranging areas as industrial applications, aerospace, telecommunication applications, consumer electronics, etc. Some real-time challenges that must be addressed are determinism and predictability of the temporal behaviour of the system. In this sense, to guarantee program execution and system response times are essential requirements that must be strictly met through appropriate task scheduling strategies. Furthermore, multiprocessor architectures are becoming more popular due to the fact that processing capabilities and computational resources are increasing. A recent study estimates that there is an increasing tendency among multiprocessor architectures to combine different levels of criticality in the same system. In this sense, to provide isolation between applications is extremely required. Partitioned technology is able to deal with this purpose. In addition, energy management is a relevant problem in real-time systems. Many real-time embedded systems, as wearable devices or mobile robots that require batteries, seek to find techniques that reduce the energy consumption and, as a consequence, increase the lifetime of their batteries. Also clear operational, financial, monetary and environmental gains are reached when minimizing energy consumption. Faced with all this, this work addresses the problem of schedulability and contributes to the study of new scheduling techniques in partitioned real-time systems. These techniques provide the minimum time to feasible schedule tasks sets. Moreover, allocation techniques for multicore systems whose main objective is to reduce the energy consumption of the overall system are also proposed. Finally, some of the obtained results are discussed as conclusions and future works are introduced.Guasque Ortega, A. (2019). Study, analysis and new scheduling proposals in partitioned real-time systems [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/135279TESI

    Evaluation and comparison of integer programming solvers for hard real-time scheduling

    Full text link
    [EN] In order to obtain a feasible schedule of a hard real-time system, heuristic based techniques are the solution of choice. In the last few years, optimization solvers have gained attention from research communities due to their capability of handling large number of constraints. Recently, some works have used integer linear programming (ILP) for solving mono processor scheduling of real-time systems. In fact, ILP is commonly used for static scheduling of multiprocessor systems. However, two main solvers are used to solve the problem indistinctly. But, which one is the best for obtaining a schedulable system for hard real-time systems? This paper makes a comparison of two well-known optimization software packages (CPLEX and GUROBI) for the problem of finding a feasible schedule on monoprocessor hard real-time systems.This work was supported under Grant PLEC2021-007609 funded by MCIN/AEI/10.13039/501100011033 and by the "European Union NextGeneration EU/PRTR"Guasque Ortega, A.; Balbastre, P. (2022). Evaluation and comparison of integer programming solvers for hard real-time scheduling. IEICE Transactions on Information and Systems. E105-D(10):1726-1733. https://doi.org/10.1587/transinf.2022EDP707317261733E105-D1

    Interference-Aware Schedulability Analysis and Task Allocation for Multicore Hard Real-Time Systems

    Full text link
    [EN] There has been a trend towards using multicore platforms for real-time embedded systems due to their high computing performance. In the scheduling of a multicore hard real-time system, there are interference delays due to contention of shared hardware resources. The main sources of interference are memory, cache memory, and the shared memory bus. These interferences are a great source of unpredictability and they are not always taken into account. Recent papers have proposed task models and schedulability algorithms to account for this interference delay. The aim of this paper is to provide a schedulability analysis for a task model that incorporates interference delay, for both fixed and dynamic priorities. We assume an implicit deadline task model. We rely on a task model where this interference is integrated in a general way, without depending on a specific type of hardware resource. There are similar approaches, but they consider fixed priorities. An allocation algorithm to minimise this interference (Imin) is also proposed and compared with existing allocators. The results show how Imin has the best rates in terms of percentages of schedulability and increased utilisation. In addition, Imin presents good results in terms of solution times.This work was supported under Grant PLEC2021-007609 funded by MCIN/ AEI/ 10.13039/ 501100011033 and by the "European Union NextGenerationEU/PRTR".Aceituno-Peinado, JM.; Guasque Ortega, A.; Balbastre, P.; Simó Ten, JE.; Crespo, A. (2022). Interference-Aware Schedulability Analysis and Task Allocation for Multicore Hard Real-Time Systems. Electronics. 11(9):1-21. https://doi.org/10.3390/electronics1109131312111

    The Role of Mixed Criticality Technology in Industry 4.0

    Full text link
    [EN] Embedded systems used in critical systems, such as aeronautics, have undergone continuous evolution in recent years. In this evolution, many of the functionalities offered by these systems have been adapted through the introduction of network services that achieve high levels of interconnectivity. The high availability of access to communications networks has enabled the development of new applications that introduce control functions with higher levels of intelligence and adaptation. In these applications, it is necessary to manage different components of an application according to their levels of criticality. The concept of "Industry 4.0" has recently emerged to describe high levels of automation and flexibility in production. The digitization and extensive use of information technologies has become the key to industrial systems. Due to their growing importance and social impact, industrial systems have become part of the systems that are considered critical. This evolution of industrial systems forces the appearance of new technical requirements for software architectures that enable the consolidation of multiple applications in common hardware platforms-including those of different criticality levels. These enabling technologies, together with use of reference models and standardization facilitate the effective transition to this approach. This article analyses the structure of Industry 4.0 systems providing a comprehensive review of existing techniques. The levels and mechanisms of interaction between components are analyzed while considering the impact that the handling of multiple levels of criticality has on the architecture itself-and on the functionalities of the support middleware. Finally, this paper outcomes some of the challenges from a technological and research point of view that the authors identify as crucial for the successful development of these technologies.This research was funded by the Spanish Science and Innovation Ministry MICINN: CICYT project PRECON-I4: "Predictable and dependable computer systems for Industry 4.0" TIN201786520-C3-1-R.Simó Ten, JE.; Balbastre, P.; Blanes Noguera, F.; Poza-Lujan, J.; Guasque Ortega, A. (2021). The Role of Mixed Criticality Technology in Industry 4.0. Electronics. 10(3):1-16. https://doi.org/10.3390/electronics1003022611610

    Scheduling techniques for optimising the performance of multicore real-time systems

    Full text link
    [EN] Multicore systems emerged as an alternative to traditional monocore systems. Although these systems possess high performance, they have more complexity. Moreover, their performance can be degraded because shared hardware resources introduce scheduling delays. To reduce this delay or contention, there are several techniques that can be applied both when allocating tasks to cores and when scheduling tasks within each core. In this paper, we propose a scheduling algorithm that combines different known scheduling policies to obtain a temporal plan that reduces the interference. In addition, we propose an artificial neural network to predict which allocation policy should be applied to minimize the length of the intervals that compose the temporal plan and thus reduce the scheduling complexity of each interval.[ES] Los sistemas multinúcleo surgieron como alternativa y mejora a los tradicionales sistemas mononúcleo. Aunque el rendimiento de estos sistemas es mayor, poseen más complejidad. Además, su rendimiento puede verse degradado debido a que los recursos hardware compartidos introducen retrasos en la planificación. Para reducir este retraso o contención existen diversas técnicas, que se pueden aplicar tanto a la hora de alojar las tareas en los núcleos como al planificar las tareas dentro de cada núcleo. En este trabajo se propone un algoritmo de planificación que combina distintas políticas de planificación conocidas para obtener un plan temporal que posea una menor interferencia. Además, se propone una red neuronal artificial para predecir qué política de alojamiento se debe aplicar para minimizar la longitud de los intervalos que forman el plan temporal y así reducir la complejidad de planificación de cada intervalo.Esta publicación es parte del proyecto de I+ D+ i PLEC2021-007609 financiado por MCIN/ AEI/ 10.13039/501100011033 y por Unión Europea NextGenerationEU / PRTR y del proyecto de I+ D + i PID2021-124502OB-C41, financiado por MCIN/ AEI/10.13039/501100011033. También ha sido financiado por PAID-10-20 (Universitat Politècnica de València)Aceituno, JM.; Guasque, A.; Balbastre, P.; Simó, J.; Pereira, CE.; Crespo, A. (2023). Técnicas de planificación para optimizar el rendimiento de los sistemas de tiempo real multiprocesador. Revista Iberoamericana de Automática e Informática industrial. 21(1):29-38. https://doi.org/10.4995/riai.2023.19935293821

    Scheduling of hard real-time systems using non-conventional techniques

    Full text link
    [EN] In the scheduling of hard real time systems it is key to find a temporal plan in which tasks can be executed before the deadline expires. Different types of scheduling algorithms can be used to achieve this goal. In addition to finding a feasible plan, it is often beneficial, out of all existing feasible plans, to find one that minimises some time parameter of the system. There are many scheduling algorithms that are able to find a correct scheduling of the set of tasks, but it is not so common to find algorithms that optimise other parameters to improve the performance of the system in terms of stability, power consumption, etc. Existing heuristics can improve the performance but without ensuring an optimal result. In this work we explore unconventional scheduling techniques based on integer linear programming to solve scheduling in mono processor systems with the objective of minimising the worst-case response time of the system tasks and the assignment of tasks to processors in multiprocessor systems with the objective of minimising the interference produced by the access to common hardware resources.[ES] En la planificación de sistemas de tiempo real crí­tico es clave encontrar un plan temporal en el que las tareas pueden ejecutarse antes de que venza el plazo establecido. Para lograr este objetivo se pueden utilizar diferentes tipos de algoritmos de planificación. Además de encontrar un plan factible, muchas veces es beneficioso, de todos los planes factibles existentes, encontrar aquel que minimiza algún parámetro temporal del sistema. Existen muchos algoritmos de planificación que son capaces de encontrar una planificación correcta del conjunto de tareas. Pero no es tan común encontrar algoritmos que optimicen otros parámetros para mejorar el funcionamiento del sistemas en términos de estabilidad, consumo de potencia, etc. Los heurí­sticos existentes puede mejorar el comportamiento pero sin asegurar un resultado óptimo. En este trabajo exploramos las técnicas de planificación no convencionales basadas en programación lineal entera para resolver la planificación en sistemas mono procesador con el objetivo de minimizar el peor tiempo de respuesta y el cambio de contexto de las tareas del sistema y la asignación de tareas a procesadores en sistemas multiprocesador con el objetivo de minimizar la interferencia producida por el acceso a recursos hardware comunes.Esta publicacion es parte del proyecto de I+D+i PLEC2021-007609 financiado por MCIN/ AEI/10.13039/501100011033 y por “Unión Europea NextGenerationEU / PRTR”.Balbastre, P.; Aceituno, JM.; Guasque, A.; Blanes, JF.; Crespo, A.; Poza, JL. (2022). Planificación de sistemas de tiempo real crí­tico mediante técnicas no convencionales. Revista Iberoamericana de Automática e Informática industrial. 19(4):369-379. https://doi.org/10.4995/riai.2022.1714836937919

    Real-time hierarchical systems with arbitrary scheduling at global level

    Full text link
    [EN] Partitioned architectures isolate software components into independent partitions whose execution will not interfere with other partitions, preserving temporal and spatial isolation. Hierarchical scheduling can effectively be used to schedule these systems. Schedulability analysis of hierarchical real-time systems is based on prior knowledge of the local and the global scheduling algorithms. In a partitioned system with safety and security issues and certification assurance levels, global scheduling is usually generated using a static table. Therefore, each partition must allocate task jobs only in the temporal windows reserved for that partition. Even if the static table can come originally from a periodic server or other scheduling policy, the final plan may be modified due to changes in the system requirements. As a consequence, the CPU assignment to a partition does not have to correspond to any known policy. In this case, it is not possible to use existing scheduling analysis for hierarchical systems. This paper studies a new scheduling problem: a hierarchical system in which global policy is not known but provided as a set of arbitrary time windows.This work has been funded by the Spanish government under grant TIN2014-56158-C4-1-P-AR and by the European Commission under FP7-ICT-2013.3.4 Programme with grant 610640Guasque Ortega, A.; Balbastre, P.; Crespo, A. (2016). Real-time hierarchical systems with arbitrary scheduling at global level. Journal of Systems and Software. 119:70-86. https://doi.org/10.1016/j.jss.2016.05.040S708611

    Control de un display oscilante mediante técnicas de vistualización y particionado

    Full text link
    Proyecto confidencial (Riunet)Guasque Ortega, A. (2013). Control de un display oscilante mediante técnicas de vistualización y particionado. http://hdl.handle.net/10251/33171.Archivo delegad

    Análisis de planificabilidad de sistemas jerárquicos con planificación arbitraria en el nivel global

    Full text link
    [EN] The goal of this work is to provide schedulability analysis of a two-level hierarchical real-time system in which the scheduling algorithm of the global leve lis not known. Existing work suppose that the scheduling policy is known a priori in both levels. However, in partitioned systems each level is managed by a different actor, so it is not always possible to know the scheduling policy in the global level but the only information available is the sequence of temporal windows in which tasks shall execute. The goal of the work is to find a schedulability analysis in the local level given a sequence of temporal windows in the global level.[ES] El trabajo tiene como objetivo analizar la planificabilidad de un sistema de tiempo real jerárquico de dos niveles en el cual no es conocida la política de planificación en el nivel global. Los trabajos existentes suponen que tanto en el nivel local como en el global es conocida a priori la política de planificación. Sin embargo, en los sistemas particionados donde cada nivel es gestionado por un actor diferente, no siempre es posible conocer el algoritmo aplicado en el nivel global, sino que para planificar el nivel local solo se dispone de la secuencia de ventanas temporales en las que las tareas pueden ejecutarse. El objetivo del trabajo es encontrar un análisis de planificabilidad que permita saber a nivel local si el conjunto de tareas es planificable dada una secuencia arbitraria de ventanas temporalesGuasque Ortega, A. (2015). Análisis de planificabilidad de sistemas jerárquicos con planificación arbitraria en el nivel global. http://hdl.handle.net/10251/56250TFG

    Energy efficient partition allocation in mixed-criticality systems.

    No full text
    This paper addresses the problem of energy management of mixed criticality applications in a multi-core partitioned architecture. Instead of focusing on new scheduling algorithms to adjust frequency in order to save energy, we propose a partition to CPU allocation that takes into account not only the different frequencies at which the CPU can operate but the level of criticality of the partitions. The goal is to provide a set of pre-calculated allocations, called profiles, so at run time the system can switch to different modes depending on the battery level. These profiles achieve different levels of energy saving and performance applying different strategies. We also present a comparison in terms of energy saving of the most used bin-packing algorithms for partition allocation. As this is an heuristic, it is not possible to ensure that our results involve the minimum energy consumption. For this reason, we also provide a comparison with a exact method, such as constraint programming
    corecore